
export
    SWS_FAST_BILINEAR,
    SWS_BILINEAR,
    SWS_BICUBIC,
    SWS_X,
    SWS_POINT,
    SWS_AREA,
    SWS_BICUBLIN,
    SWS_GAUSS,
    SWS_SINC,
    SWS_LANCZOS,
    SWS_SPLINE,
    SWS_SRC_V_CHR_DROP_MASK,
    SWS_SRC_V_CHR_DROP_SHIFT,
    SWS_PARAM_DEFAULT,
    SWS_PRINT_INFO,
    SWS_FULL_CHR_H_INT,
    SWS_FULL_CHR_H_INP,
    SWS_DIRECT_BGR,
    SWS_ACCURATE_RND,
    SWS_BITEXACT,
    SWS_ERROR_DIFFUSION,
    SWS_CPU_CAPS_MMX,
    SWS_CPU_CAPS_MMXEXT,
    SWS_CPU_CAPS_MMX2,
    SWS_CPU_CAPS_3DNOW,
    SWS_CPU_CAPS_ALTIVEC,
    SWS_CPU_CAPS_BFIN,
    SWS_CPU_CAPS_SSE2,
    SWS_MAX_REDUCE_CUTOFF,
    SWS_CS_ITU709,
    SWS_CS_FCC,
    SWS_CS_ITU601,
    SWS_CS_ITU624,
    SWS_CS_SMPTE170M,
    SWS_CS_SMPTE240M,
    SWS_CS_DEFAULT,
    SwsVector,
    SwsFilter,
    SwsContext


const SWS_FAST_BILINEAR  =  1
const SWS_BILINEAR  =  2
const SWS_BICUBIC  =  4
const SWS_X  =  8
const SWS_POINT  =  0x10
const SWS_AREA  =  0x20
const SWS_BICUBLIN  =  0x40
const SWS_GAUSS  =  0x80
const SWS_SINC  =  0x0100
const SWS_LANCZOS  =  0x0200
const SWS_SPLINE  =  0x0400
const SWS_SRC_V_CHR_DROP_MASK  =  0x00030000
const SWS_SRC_V_CHR_DROP_SHIFT  =  16
const SWS_PARAM_DEFAULT  =  123456
const SWS_PRINT_INFO  =  0x1000
const SWS_FULL_CHR_H_INT  =  0x2000
const SWS_FULL_CHR_H_INP  =  0x4000
const SWS_DIRECT_BGR  =  0x8000
const SWS_ACCURATE_RND  =  0x00040000
const SWS_BITEXACT  =  0x00080000
const SWS_ERROR_DIFFUSION  =  0x00800000
const SWS_CPU_CAPS_MMX  =  0x80000000
const SWS_CPU_CAPS_MMXEXT  =  0x20000000
const SWS_CPU_CAPS_MMX2  =  0x20000000
const SWS_CPU_CAPS_3DNOW  =  0x40000000
const SWS_CPU_CAPS_ALTIVEC  =  0x10000000
const SWS_CPU_CAPS_BFIN  =  0x01000000
const SWS_CPU_CAPS_SSE2  =  0x02000000
const SWS_MAX_REDUCE_CUTOFF  =  0.002
const SWS_CS_ITU709  =  1
const SWS_CS_FCC  =  4
const SWS_CS_ITU601  =  5
const SWS_CS_ITU624  =  5
const SWS_CS_SMPTE170M  =  5
const SWS_CS_SMPTE240M  =  7
const SWS_CS_DEFAULT  =  5

immutable SwsVector
    coeff::Ptr{Cdouble}
    length::Cint
end

immutable SwsFilter
    lumH::Ptr{SwsVector}
    lumV::Ptr{SwsVector}
    chrH::Ptr{SwsVector}
    chrV::Ptr{SwsVector}
end

const SwsContext = Void
